package com.zmn.plat.services.interfaces.orderconfig.documentarycontent;

import java.util.List;

import com.zmn.plat.model.entity.orderconfig.documentarycontent.DocumentaryContent;
import com.zmn.plat.model.entity.orderconfig.documentarycontent.DocumentaryContentQuery;

/**
 * 类描述:跟单内容service
 *
 * @author linfeng
 * @since 2019/10/22/11:58
 */
public interface DocumentaryContentService {
    /**
     * 统计
     *
     * @param query
     *            条件
     * @return
     */
    Integer countByQuery(DocumentaryContentQuery query);

    /**
     * 查询跟单内容
     *
     * @param id
     * @return
     */
    DocumentaryContent findByKey(Integer id);

    /**
     * 分页搜索跟单内容
     *
     * @param query
     *            条件
     * @return
     */
    List<DocumentaryContent> listPageByQuery(DocumentaryContentQuery query);

    /**
     * 搜索
     *
     * @param query
     *            条件
     * @return
     */
    List<DocumentaryContent> listByQuery(DocumentaryContentQuery query);

    /**
     * 批量更新状态
     * 
     * @param arrayIds
     * @param status
     * @param updater
     * @return
     */
    int updateStatusBatch(List<Integer> arrayIds, int status, String updater);

    /**
     * 更新排序
     * 
     * @param categId
     * @param sort
     * @param updater
     * @return
     */
    Integer updateSortKey(int categId, int sort, String updater);

    /**
     * 更新跟单内容首字母
     *
     * @param id
     *            条件ID
     * @param firstLetter
     *            序号
     * @param updater
     *            更新人
     * @return
     */
    Integer updateFirstLetterByKey(int id, String firstLetter, String updater);

    /**
     * 更新跟单内容
     * 
     * @param documentaryContent
     * @return
     */
    Integer updateByKey(DocumentaryContent documentaryContent);

    /**
     * 添加跟单内容
     *
     * @param documentaryContent
     *            对象
     * @return
     */
    Integer insert(DocumentaryContent documentaryContent);

}
